package com.ler.fast.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 用户
 * </p>
 *
 * @author lww
 * @since 2020-05-27
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value = "UserAccount对象", description = "用户")
public class UserAccount implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId(value = "user_id", type = IdType.AUTO)
    private Long userId;

    @ApiModelProperty(value = "用户名")
    @TableField("user_name")
    private String userName;

    @ApiModelProperty(value = "手机号")
    @TableField("mobile_phone")
    private String mobilePhone;

    @ApiModelProperty(value = "密码")
    @TableField("password")
    private String password;

    @ApiModelProperty(value = "邮箱")
    @TableField("email")
    private String email;

    @ApiModelProperty(value = "性别")
    @TableField("gender")
    private String gender;

    @ApiModelProperty(value = "头像")
    @TableField("avatar_url")
    private String avatarUrl;

    @ApiModelProperty(value = "分享来源，用户id")
    @TableField("from_user_id")
    private String fromUserId;

    @ApiModelProperty(value = "创建人")
    @TableField("creator")
    private Long creator;

    @ApiModelProperty(value = "分享下游数量，分享成功应+1")
    @TableField("share_count")
    private Integer shareCount;

    @ApiModelProperty(value = "金币数量，邀请用户，签到 +金币，金币可以换抽奖次数")
    @TableField("gold_coin")
    private Long goldCoin;

    @ApiModelProperty(value = "积分，抽奖+积分，积分是等级，等级越高，能参加的项目等级越高")
    @TableField("user_percent")
    private Long userPercent;

    @ApiModelProperty(value = "用户等级")
    @TableField("user_level")
    private Integer userLevel;

    @ApiModelProperty(value = "备注")
    @TableField("re_mark")
    private String reMark;

    @ApiModelProperty(value = "创建时间")
    @TableField("gmt_create")
    private Date gmtCreate;

    @ApiModelProperty(value = "修改人")
    @TableField("modifier")
    private Long modifier;

    @ApiModelProperty(value = "修改时间")
    @TableField("gmt_modify")
    private Date gmtModify;

    @ApiModelProperty(value = "逻辑删除")
    @TableField("is_deleted")
    private Integer isDeleted;

}
